package com.daxt.model.service.archives.vo;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;
import org.springframework.format.annotation.DateTimeFormat;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "档案编研", description = "档案类型分类")
//@TableName("\"daxt\".\"ARCHIVES_EDIT_RESEARCH\"")
@TableName("archives_edit_research")
public class ArchivesEditResearch implements Serializable{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "id", name = "id")
	@TableId(value = "id", type = IdType.AUTO)
	private Long id;
	//@NotBlank(message = "error")
	@ApiModelProperty(value = "标题", name = "title")
	private String title;
	//@NotBlank(message = "error")
	@ApiModelProperty(value = "内容", name = "content")
    private String content;
	//@NotBlank(message = "分类名不能为空")
	@ApiModelProperty(value = "作者", name = "author")
    private String author;

	@JsonDeserialize(using = LocalDateTimeDeserializer.class)
	@JsonSerialize(using = LocalDateTimeSerializer.class)
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建时间", name = "createTime",example = "2019-09-09 00:00:00")
	private LocalDateTime createTime;
    
	@ApiModelProperty(value = "公告notice  编研archives", name = "atype")
    private String atype;
	
	@ApiModelProperty(value = "0未发布 1已发布", name = "state")
	private String state;
	
	@ApiModelProperty(value = "docId", name = "docId")
	private Long docId;

	@ApiModelProperty(value = "全宗id", name = "fondsId")
	private String fondsId;

	@ApiModelProperty(value = "全宗名称", name = "fondsName")
	@TableField(exist = false)
	private String fondsName;
	

}